<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // function fn(){}
  // var fun = function(){}
  // fn()
  // fun()
  // document.onclick = fn
  // document.onclick = fun


  // 参数

  // 计算任意两个数值的和
  // function fn( n, m ){
  //   console.log(n + m);
  // }
  // fn( 20, 10 )
  
  // 计算任意个任意数值的和

  // 内置变量，对象类型，数组形式
  // arguments保存了本次执行时传入的所有的实参，不受形参的影响
  // function sum(){
    // console.log( arguments );
    // console.log( arguments[0] );
    // console.log( arguments[1] );
    // console.log( arguments[2] );
    // console.log( arguments[3] );
    // console.log( arguments.length );
    // for(var i=0; i<arguments.length; i++){
    //   console.log(arguments[i]);
    // }
  // }

  // sum( 3, 6 );

  // sum( 4, 7, 2 );

  // sum( 1, 5 );
  
  // sum( 7, 5, 6, 2 );



  // 对象内的数据是无序的
  // 数组内的数据是有序的

  // 数组内的数据都具有下标（索引，序号）
  // 序号从0开始
  // 数组具有一个length属性，用来表示自身有几个数据
  // 序号范围：0 ~ arguments.length-1
  // 数组的语法：数组[序号]




  // 计算任意个任意数值的和

  function sum(){
    var s = 0;
    for(var i=0;i<arguments.length;i++){
      s += arguments[i];
    }
    console.log(s);
  }

  sum( 3, 6 );

  sum( 4, 7, 2 );

  sum( 1, 5 );
  
  sum( 7, 5, 6, 2 );

  // 函数的参数为确定的个数时，可以使用确定的形参接收

  // 函数的参数为不确定的个数时，直接使用arguments接收所有实参
  //   注意解析arguments



</script>
</html>